footer {
  font-size: 2vw;
  height: 100vh;
  overflow: hidden;
  background-color: #5f33f5;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
footer .wrapper {
  display: flex;
  padding: 0 7vw 4vh;
  border-bottom: 1px solid #bfa4ff;
  flex-wrap: wrap;
  justify-content: space-between;
}
footer .wrapper h3 {
  font-family: JinBuTi;
  flex-basis: 100%;
}
footer .wrapper .left {
  flex: 1;
}
footer .wrapper .left strong {
  margin-bottom: 2vh;
  font-family: JinBuTi;
  display: block;
  color: #7beb66;
  font-size: 1.2em;
  text-decoration: underline;
}
footer .wrapper .left p {
  margin: 0;
  line-height: 2;
  font-size: 0.6em;
  text-decoration: underline;
}
footer .wrapper .left address {
  margin-top: 12.6vh;
  color: #bfa4ff;
  font-size: 0.4em;
  font-style: unset;
}
footer .wrapper .left address span:last-child {
  margin-left: 2em;
}
footer .wrapper .right {
  font-size: 0.5em;
}
footer .wrapper .right .ul_wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 6em;
}
footer .wrapper .right .qrcode {
  margin-top: 1em;
}
footer .wrapper .right .qrcode img {
  width: 7.5vw;
  margin-right: 2em;
}
footer .wrapper .right ul {
  line-height: 1;
}
footer .wrapper .right ul li {
  margin-bottom: 1.2em;
  text-align: center;
}
footer .wrapper .right ul li:first-child {
  /*color: grey;
  font-size: 0.9em;*/
  font-weight: 700;
  font-size: 25px;
}
footer > p {
  color: #bfa4ff;
  font-size: 0.3em;
  padding: 2vh 7vw 4vh;
  margin-bottom: 0;
}
